import fs from 'fs'
import {stringify} from './jsonUtil'
import path from 'path'

let configPath = path.join(process.cwd(), 'config.json')

let config = {}

/**
 * 初始化，通过fs读取文件加载config
 * 用require加载失败，未查明原因
 */
try {
    let strConfig = fs.readFileSync(configPath, 'utf8')

    config = JSON.parse(strConfig)
}
catch (err) {
    console.error("配置文件加载失败");
}

//json文件通过加后缀的key变相添加注释，注释后缀
//let descSuffix = config["descriptionSuffix"]


/**
 * 获取配置
 * @param key
 * @returns {*}
 */
export function getProperty(key) {
    return config[key]
}

/**
 * 更新配置
 * @param key
 * @param value
 */
export function setProperty(key, value) {
    config[key] = value
    let str = stringify(config)
    fs.writeFile(configPath, str, (err) => {
        if (err) {
            console.error("配置修改失败，失败原因：")
            console.error(err)
        }
        else {
            console.log("配置：%s已被修改为：%s", key, value)
        }

    })
}